1. Field of the Invention
The present invention generally relates to methods of data transfer and devices for controlling data transfer, and particularly relates to a method of data transfer and a device for controlling data transfer based on the method of data transfer.
2. Description of the Related Art
A size of switch systems used in communication networks has been on the increase in recent years in order to meet an increasing demand for various types of different communication means such as cellular phones, PHS (personal handy-phone systems), ISDN (integrated services digital network), etc.
FIG. 1 is a block diagram showing a typical configuration employed in inter-device communications as employed in switch systems. FIG. 2 is an illustrative drawing showing a physical appearance of the devices of FIG. 1.
A dominant device 12 is connected to a subordinate device 11 via a cable 13. The dominant device 12 holds a dominant position in comparison with the subordinate device 11 in that the dominant device 12 can use a bus anytime at its own request, for example. On the other hand, the subordinate device 11 needs to submit itself to bus arbitration in order to use the bus. The cable 13 may be a single signal line, or may be a plurality of signal lines. Each signal line may be a simple line structure, or may be a combined line structure.
In what follows, the configuration of inter-device communication will be described with reference to FIG. 1.
The dominant device 12 includes a plurality of interface-control units 7 and 8 and a plurality of dominant function blocks 9 and 10. Function blocks are such units as processors and input/output devices. The dominant function block 10 is a switch device itself, and the dominant function block 10 is an input/output device.
The subordinate device 11 includes a plurality of interface-control units 5 and 6 and a plurality of subordinate function blocks 1 through 4. The subordinate function blocks 1 through 4 are input/output devices, for example.
The interface-control units 7 and 8 and the dominant function blocks 9 and 10 of the dominant device 12 communicate with each other via a dominant bus 14. The interface-control units 5 and 6 and the subordinate function blocks 1 through 4 communicate with each other via subordinate buses 17 and 18.
Communication between the dominant device 12 and the subordinate device 11 is conducted via the interface-control units. When the dominant function block 10 needs to communicate with the subordinate function block 1, an order issued from the dominant function block 10 is transferred to the subordinate function block 1 via the dominant bus 14, the interface-control unit 7, a communication line 15, the interface-control unit 5, and the subordinate bus 18. An answer to this order is transferred from the subordinate function block 1 to the dominant function block 10 by traveling along the same route in an opposite direction.
In general, communication between the dominant device 12 and the subordinate device 11 is conducted in such a manner as to provide priority to the dominant device 12. Namely, when the dominant device 12 accesses the subordinate device 11, there is no need for bus arbitration. On the other hand, when the subordinate device 11 accesses the dominant device 12, the subordinate device 11 needs to ask for bus arbitration. Since the subordinate device 11 cannot access the dominant device 12 without going through bus arbitration, such an access may take time due to a lengthy arbitration process, thereby hampering an attempt to enhance communication speed.
FIG. 3 is a sequence chart showing a sequence performed when the subordinate function block 1 accesses the dominant function block 10.
[1] The subordinate function block 1 sends a signal REQ (request for use of a bus) to the interface-control unit 5.
[2] Upon receiving the signal REQ, the interface-control unit 5 returns a signal ACK for acknowledging use of the bus to the subordinate function block 1 that sent the signal REQ. This grants the right to use the bus.
[3] Upon receiving the signal ACK, the subordinate function block 1 starts transmitting data DATA to the interface-control unit 5.
[4] The interface-control unit 5 stores the received data DATA in a buffer Buffer#1 thereof. After storing all the data DATA in the buffer Buffer#l, the interface-control unit 5 transmits a signal REQ to the interface-control unit 7 in order to request use of a bus between the devices.
[4]-[6] A bus arbitration as shown in [1]-[3] described above is conducted between the devices (i.e., between the interface-control unit 5 and the interface-control unit 7). The interface-control unit 7 stores the data DATA in a buffer Buffer#2 thereof. After storing all the data DATA in the buffer Buffer#2, the interface-control unit 7 transmits a signal REQ to the dominant function block 10.
[7]-[9] A bus arbitration as in [1]-[3] described above is performed within the dominant device 12 (i.e., between the interface-control unit 7 and the dominant function block 10). Then, the data DATA is transferred to the dominant function block 10, and the signal REQ is withdrawn after completion of the data transfer. This completes data transfer between the devices.
In the related-art, the subordinate device accesses the dominant device, and transfers data as shown in the sequence described above.
As shown in the above, when the subordinate device accesses the dominant device in the inter-device communication, first, a bus arbitration takes place within the subordinate device as in [1], [2], [3] of FIG. 3. Then, a next bus arbitration is conducted between the devices as in [4], [5], [6] of FIG. 3. Finally, another bus arbitration is held within the dominant device as in [7], [8], [9] of FIG. 3.
As shown FIG. 3, the subordinate device first stores all the data in the buffer thereof, and, then, transmits a signal REQ to the dominant device in order to minimize a period of exclusive use of the bus connected to the dominant device and to insure that all the data is transferred correctly.
In general, access from the subordinate device to the dominant device is made in form of an answer, which is issued in response to an order sent from the dominant device. As the system is expanded, the number of subordinate function blocks is increased in the subordinate device, so that access from the dominant device to the subordinate device is increased accordingly.
Since every one of the subordinate function blocks needs to return an answer in response to an access from the dominant device, the number of accesses becomes more frequent that when the dominant device is connected to only one subordinate function block.
As a result, as the system is more expanded, the number of bus arbitrations increases in association with returned answers. This leads to an undesirable fall in a response time.
Accordingly, there is a need for a scheme which can enhance data-transfer speed between devices as in between a subordinate device and a dominant device.
Accordingly, it is a general object of the present invention to provide a scheme which can satisfy the need described above.
It is another and more specific object of the present invention to provide a scheme which can enhance data-transfer speed between devices as in between a subordinate device and a dominant device.
A method of transferring data from a source device to a destination device via a source-control device connected to the source device and a destination-control device connected to the destination device includes the steps of transmitting a data-transfer-request signal from the source device to the source-control device, transmitting a data-transfer-acknowledge signal from the source-control device to the source device in response to the data-transfer-request signal, and transmitting a data-transfer-request signal from the source-control device to the destination-control device concurrently with the transmission of the data-transfer-acknowledge signal.
In the method described above, a time period during which data is transferred from the source device (subordinate function block) and stored in a buffer of the source-control device (interface-control unit) is utilized to make efficient use of time. Namely, a bus arbitration with the destination-control device (dominant device) is not commenced after all the transferred data is stored in the buffer, but is started and completed while the transferred data is being stored in the buffer. This is achieved by transmitting the data-transfer-request signal to the destination-control device concurrently with the transmission of the data-transfer-acknowledge signal. In this manner, access to the destination-control device is established while the buffer accumulates the data. This can shorten a time length required for data transfer by virtually eliminating a time period for a bus arbitration.
Other objects and further features of the present invention will be apparent from the following detailed description when read in conjunction with the accompanying drawings.